Practitioners continually strive for improved data transport accuracy and reliability. These may be especially difficult objectives when the data channel is subject to noise interference, large signal power variations, or multi-path fading. The latter two situations are often encountered in radio data communications systems. Large signal power variations are encountered because radio signal path loss may vary over literally orders of magnitude. Additional variations are encountered due to Rayleigh fading when the transmitting device and receiving device are in relative motion.
The literature is replete with analysis of the properties of radio signals as propagated and little is served by further review here. The net of all these properties is that the receiving device will encounter a signal whose average signal strength may vary over literally orders of magnitude. This signal will be a composite of several incident signals, of varying phase, and thus subject to periodic large reductions in signal power (fades) exhibiting rapid phase and small frequency variations during these fades.
Various techniques for addressing certain of these various properties have been developed. Among such techniques are encoding the data to be transported to allow for error correction at a decoder. One form of data encoding that has been developed and used is convolutional or trellis encoding, wherein the transmitted symbols depend not only on the data to be transported but also on previous data that has been transported. This technique works well in additive white noise situations and has been adapted to various specific transport environments. Furthermore an optimum decoder, at least for additive gaussian noise channels, may be implemented. This decoder is variously known as a Viterbi or trellis type decoder.
Convolutional encoding, notwithstanding advantages, does have limitations and may not always adequately compensate for the conditions encountered during a fade, specifically the impact on a particular symbol. To address this, inner and outer codes have been proposed wherein the coding steps nearest the channel are selected for their ability to at least "mark" particular symbols where circumstances, such as a fade, dictate low confidence in the channel during the corresponding symbol time. This technique, relying on the properties of certain codes, is known as detecting an erasure and is one way of using confidence in the communications channel to improve data transport integrity. This approach does require multiple encoders and decoders.
Other approaches have been developed, to directly assess a confidence level in the channel. These rely on measuring particular properties of the received signal that may be peculiar to or result from a faded signal. They include measuring and associating a received signal strength indication (RSSI), as a proxy for channel confidence, with each symbol to facilitate the decoding process. The association of RSSI, including variations thereof, with each symbol typically includes one or more computationally complex multiplication processes. As one example of such a process, the reader is referred to U.S. Pat. No. 5,363,413 to Vos granted Nov. 8, 1994 and assigned to the same assignee as here. All of these known approaches suffer from computational complexity that in turn may disadvantage end products in economic terms as well as physical size and battery life.
The computational complexity issue is self evident with the multiple encoder and decoder approaches. It is also a concern with trellis decoders where ordinarily calculations for all possible decoder decisions are performed and a final decoder derision is made as the optimum result from all possible decoder decisions. Clearly a need exists for a computationally efficient data decoder that resolves the above noted inadequacies.